package c

import (
	"github.com/flipped-aurora/gin-vue-admin/server/middleware"
	"github.com/gin-gonic/gin"
)

// ContentRouter 内容模块相关路由信息
type ContentRouter struct{}

func (con *ContentRouter) InitContentRouter(Router *gin.RouterGroup) {
	contentRouter := Router.Group("content").Use(middleware.JWTAuth())
	{
		contentRouter.POST("createContent", contentApi.CreateContent)             // 创建内容
		contentRouter.GET("getContent", contentApi.GetContentByID)                // 根据 ID 查询内容
		contentRouter.GET("getContentList", contentApi.GetContentListByCommunity) // 分页查询内容
		contentRouter.PUT("updateContent", contentApi.UpdateContent)              // 更新内容
		contentRouter.DELETE("deleteContent", contentApi.DeleteContent)           // 删除内容

		// todo: 考虑合并
		contentRouter.GET("getUserRelatedContent", contentApi.GetUserRelatedContent) // 分页查询用户相关内容
		contentRouter.GET("getMarkContentList", contentApi.ListMarkContent)          // 分页查询收藏内容
		contentRouter.GET("getLikeContentList", contentApi.ListLikesContent)         // 分页查询点赞内容

		contentRouter.GET("getUserContentActions", contentApi.GetUserContentActions) // 获取用户内容操作记录

		// 内容互动扩展功能接口
		contentRouter.POST("likeContent", contentApi.LikeContent)       // 点赞内容
		contentRouter.POST("dislikeContent", contentApi.DislikeContent) // 点踩内容
		contentRouter.POST("markContent", contentApi.MarkContent)       // 收藏内容
		contentRouter.POST("shareContent", contentApi.ShareContent)     // 分享内容
		contentRouter.POST("viewContent", contentApi.ViewContent)       // 浏览内容
		// 专业度评价接口
		contentRouter.POST("profRatingContent", contentApi.ProfRatingContent) // 专业度评价
	}
}
